1. Field of the Invention
The present invention relates to bootstrap loading systems and methods for digital computers, and more particularly to a system and method for manual fail-safe bootstrap based on a single rewritable non-volatile memory.
2. Prior Art of the Invention
In order to start using a personal computer system, it must be switched from a “cold” or “off” status to an initiated status, in which an operating system or kernel software is loaded and control of the computer can be attained. That is, the computer is not functional in interacting with its environment or in running software applications until the operating system or kernel software has been loaded via a boot process.
Commencement of the loading process is accomplished by a series of steps or levels. The way in which a computer utilizes such a series to get started is analogized to the computer “picking itself up by its own bootstraps.” Hence the term “boot” is used to describe the process. The first level for the loading process of booting is provided in non-volatile memory, and commences at a default address thereof. The non-volatile memory may, for example, be an EEPROM (Electrically Erasable Programmable Read-Only Memory) or a flash ROM (Read-Only Memory). Upon power up or reboot, a computer is hard-wired to commence operation of a software routine at the default address. These fixed instructions typically have just enough intelligence to seek out the next level of the program loading sequence, which is often stored on a rotating medium such as a hard disk.
The first level of booting provided in an EEPROM or a flash ROM is susceptible to deletion, which results in misses. That is, because an EEPROM or a flash ROM allows users to erase existing data and rewrite new data therein, part or all of the first level of booting may be accidentally erased. In addition, the main boot segment for storing the first level of booting may be corrupted by accidental mechanical or human interference. To circumvent these problems, it is desired to provide functions for automatic boot which ensure that the first level boot software can be loaded successfully.
Technology for helping computer administrators supervise database backup is disclosed in U.S. Pat. No. 5,432,927 issued on Jul. 11, 1995 and entitled “Fail-Safe EEPROM Based Rewritable Boot System.” This patent discloses a system with two EEPROMs in a computer. One of the EEPROMs stores a boot code, and the other EEPROM stores a backup copy of the boot code for rebooting of the computer when the first boot code fails. However, the system requires two EEPROMs for providing the backup reboot, necessitating the extra cost for the additional EEPROM. Accordingly, what is needed is a new system which requires only a single non-volatile memory and which can still provide a safe reboot when a first level boot fails.